package com.wanmait.schedule.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import java.time.LocalDateTime;

import lombok.*;
import lombok.experimental.Accessors;

/**
 * <p>
 * 课程表
 * </p>
 *
 * @author wanmait
 * @since 2022-12-05
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode
@Accessors(chain = true)
public class Schedule {

    /**
     * 课程表id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 课程id
     */
    private Integer courseId;

    /**
     * 教师id
     */
    private Integer teacherId;

    /**
     * 教师id
     */
    private Integer classesId;

    /**
     * 该课程的第几节课
     */
    private Integer number;

    /**
     * 课程说明
     */
    private String info;

    /**
     * 对应教室id
     */
    private Integer classroomId;

    /**
     * 上课时间
     */
    private LocalDateTime courseTime;

    /**
     * 录入时间
     */
    private LocalDateTime inputTime;

    /**
     * 录入人id
     */
    private Integer inputId;

    /**
     * 审核人id
     */
    private Integer checkId;

    /**
     * 审核时间
     */
    private LocalDateTime checkTime;

    /**
     * 课程表状态 0未发布 1已发布
     */
    private Integer publish;

    /**
     * 删除
     */
    @TableLogic
    private Boolean enable;

    //教师
    @TableField(exist = false)
    private Teacher teacher;

    //课程
    @TableField(exist = false)
    private Course course;

    //教室
    @TableField(exist = false)
    private Classroom classroom;

    //班级
    @TableField(exist = false)
    private Classes classes;

    //添加教师
    @TableField(exist = false)
    private Teacher inputTeacher;

    //发布教师
    @TableField(exist = false)
    private Teacher checkTeacher;
}
